Image processing apparatus, image processing system, and recording medium

ABSTRACT

An image processing apparatus includes circuitry to acquire input image data, perform image conversion on the input image data to generate the output image data corresponding to each of a plurality of output conditions, and calculate a color feature amount that is a change amount of color characteristics of each pixel from the input image data and the output image data before and after the image conversion. The circuitry calculates cost information indicating cost of the output image data corresponding to each of the plurality of output conditions, based on the plurality of output conditions and the output image data, and calculates cost effectiveness with reference to the color feature amount, the cost information, and a weighting table in which weights for items of the plurality of output conditions are set, to determine one output condition of the plurality of output conditions to be used for output.

CROSS-REFERENCE TO RELATED APPLICATIONS

This patent application is based on and claims priority pursuant to 35U.S.C. § 119(a) to Japanese Patent Application Nos. 2017-096614, filedon May 15, 2017, and 2018-083445, filed on Apr. 24, 2018 in the JapanPatent Office, the entire disclosure of which is hereby incorporated byreference herein.

BACKGROUND Technical Field

Aspects of the present disclosure relate to an image processingapparatus, an image processing system, a non-transitory recording mediumstoring an information processing program.

Related Art

In an image output apparatus of an inkjet or electrophotographic method,various output conditions (for example, model, productivity, print mode,color material, pre-coating, post-coating, raster image processor (RIP),resolution, and sheet) can be set. There are differences in effect onimage quality (for example, size of color gamut, color reproducibilityof specific color, etc.) obtained between the output conditions. Inaddition, since the required expenses are different for the output basedon the output conditions, a technique is known that allows the selectionof output condition according to the target cost.

SUMMARY

In an aspect of the present disclosure, there is provided an imageprocessing apparatus that includes circuitry to acquire input imagedata, perform image conversion on the input image data to generate theoutput image data corresponding to each of a plurality of outputconditions, and calculate a color feature amount that is a change amountof color characteristics of each pixel from the input image data and theoutput image data before and after the image conversion, calculates costinformation indicating cost of the output image data corresponding toeach of the plurality of output conditions, based on the plurality ofoutput conditions and the output image data, and calculates costeffectiveness with reference to the color feature amount, the costinformation, and a weighting table in which weights for items of theplurality of output conditions are set, to determine one outputcondition of the plurality of output conditions to be used for output.

In another aspect of the present disclosure, there is provided an imageprocessing system that includes an image output apparatus and an imageprocessing apparatus that generates output image data to be output bythe image output apparatus. The image processing apparatus includescircuitry to acquire input image data, perform image conversion on theinput image data to generate the output image data corresponding to eachof a plurality of output conditions, calculate a color feature amountthat is a change amount of color characteristics of each pixel from theinput image data and the output image data before and after the imageconversion, calculate cost information indicating cost of the outputimage data corresponding to each of the plurality of output conditions,based on the plurality of output conditions and the output image data,and calculate cost effectiveness with reference to the color featureamount, the cost information, and a weighting table in which weights foritems of the plurality of output conditions are set, to determine oneoutput condition of the plurality of output conditions to be used foroutput. The image output apparatus receives the output image data fromthe image processing apparatus and outputs the output image datareceived from the image processing apparatus.

In still another aspect of the present disclosure, there is provided anon-transitory recording medium storing an image processing program tocause a computer to execute acquiring input image data, performing imageconversion on the input image data to generate output image datacorresponding to each of a plurality of output conditions, calculating acolor feature amount that is a change amount of color characteristics ofeach pixel from the input image data and the output image data beforeand after the image conversion, calculating cost information indicatingcost of the output image data corresponding to each of the plurality ofoutput conditions, based on the plurality of output conditions and theoutput image data, and calculating cost effectiveness with reference tothe color feature amount, the cost information, and a weighting table inwhich weights for items of the plurality of output conditions are set,to determine one output condition of the plurality of output conditionsto be used for output.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

A more complete appreciation of the disclosure and many of the attendantadvantages and features thereof can be readily obtained and understoodfrom the following detailed description with reference to theaccompanying drawings, wherein:

FIG. 1 is an illustration of an example of an overall configuration ofan image processing system according to an embodiment of the presentdisclosure;

FIG. 2 is a hardware configuration diagram of a personal computer (PC)according to an embodiment of the present disclosure;

FIG. 3 is an example of a functional block diagram of the PC accordingto an embodiment of the present disclosure;

FIG. 4 is an illustration of functional blocks of an image processingunit;

FIGS. 5A and 5B are illustrations of examples of a weighting table;

FIG. 6 is an illustration of functional blocks included in an imageconversion unit and a color-feature-amount calculation unit according toan embodiment of the present disclosure;

FIG. 7 is a diagram of a concept of gamut compression;

FIG. 8 is an illustration of functional blocks of a cost calculationunit according to an embodiment of the present disclosure;

FIG. 9A through 9I are illustrations of examples of a cost table;

FIGS. 10A through 10C are illustrations of calculated cost information;

FIG. 11 is an illustration of functional blocks of an output conditiondetermination unit according to an embodiment of the present disclosure;

FIG. 12 is an illustration of functional blocks of a preview imagegeneration unit according to the present embodiment;

FIGS. 13A and 13B are illustrations of examples of a preview image; and

FIG. 14 is a flowchart of a flow of processing of determining outputimage data.

The accompanying drawings are intended to depict embodiments of thepresent disclosure and should not be interpreted to limit the scopethereof. The accompanying drawings are not to be considered as drawn toscale unless explicitly noted.

DETAILED DESCRIPTION

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the presentinvention. As used herein, the singular forms “a”, “an” and “the” areintended to include the plural forms as well, unless the context clearlyindicates otherwise.

In describing embodiments illustrated in the drawings, specificterminology is employed for the sake of clarity. However, the disclosureof this specification is not intended to be limited to the specificterminology so selected and it is to be understood that each specificelement includes all technical equivalents that have a similar function,operate in a similar manner, and achieve a similar result.

Hereinafter, the details of each embodiment will be described withreference to the attached drawings. In describing the specification andthe drawings according to the respective embodiments, the same referencenumerals will be given to the constituent elements having substantiallythe same functional arrangement to omit redundant explanation.

Embodiments of the present disclosure are described in detail below withreference to the accompanying drawings. In an embodiment describedbelow, an image processing system for commercial printing is taken as anexample. A general-purpose information processing apparatus, such as apersonal computer (PC) in an image processing system acquires targetimage data (output target data) to be subjected to image formation(output). Based on output conditions, the image data is color-convertedaccording to the color gamut characteristics of an image formingapparatus, and is converted into a format for image formation output,such as CMYK (cyan, magenta, yellow, and black). The converted imagedata is transmitted to the image forming apparatus and output (printed).

FIG. 1 is an illustration of an example of an overall configuration ofan image processing system according to the present embodiment. Asillustrated in FIG. 1, an image processing system 1 according to thepresent embodiment includes, e.g., an image forming apparatus 100, a PC200 as a controller terminal, a file server 300, and a digital camera400. The image forming apparatus 100, the PC 200, and the file server300 are connected via a network as illustrated in FIG. 1.

The image forming apparatus 100 includes an image forming engine of,e.g., an inkjet or electrophotographic system, and outputs (prints) animage on a sheet according to image data transmitted from the PC 200.The image forming apparatus 100 is an example of an image outputapparatus.

As described above, the PC 200 acquires target image data to besubjected to image formation and output and performs image processing,such as color matching, based on output conditions. The PC 200 accordingto the present embodiment has a function of displaying a screen thatallows an operator to easily confirm the change in color tone of animage before and after performing the color matching. Note that the PC200 is an example of an image processing apparatus.

Similarly with the PC 200, the file server 300 is constituted by aninformation processing apparatus and provides a storage area accessiblevia the network. In the present embodiment, the file server 300 storesimage data that can be output, and functions as an image input devicethat provides image data in response to access from the PC 200.

Similarly with the file server 300, the digital camera 400 is an imagingdevice of image information and functions as an image input device thatprovides the PC 200 with image data that can be output. In addition tothe file server 300 and the digital camera 400 illustrated in FIG. 1,for example, a scanner can be operated as an image input device.

Next, a hardware configuration of the PC 200 according to the presentembodiment is described. FIG. 2 is a hardware configuration diagram ofthe PC according to the present embodiment. As illustrated in FIG. 2,the PC 200 of the present embodiment has a configuration similar to ageneral information processing terminal.

In the PC 200 according to the present embodiment, a central processingunit (CPU) 10, a random access memory (RAM) 20, a read only memory (ROM)30, a hard disk drive (HDD) 40, and an interface (I/F) 50 are connectedvia a bus 80. A liquid crystal display (LCD) 60 and an operation unit 70are connected to the I/F 50. In addition to the configurationillustrated in FIG. 2, the image forming apparatus 100 according to thepresent embodiment includes an engine to perform image formation.

The CPU 10 is an arithmetic means and controls the operation of theentire PC 200. The RAM 20 is a volatile storage medium which informationcan be read from or can be written to at a high speed and is used as awork area when the CPU 10 processes information. The ROM 30 is anon-volatile read only storage medium and stores programs, such asfirmware.

The HDD 40 is a non-volatile storage medium that can read or writeinformation and stores an operating system (OS), various controlprograms, and application programs etc. In the HDD 40 of the presentembodiment, information to be referred to when the PC 200 executes imageprocessing is stored. This will be described in detail later.

The I/F 50 connects the bus 80 to various hardware components ornetworks for control. The LCD 60 is a visual user interface for a userto confirm the state of the PC 200. The operation unit 70 is a userinterface such as a keyboard or a mouse used by the user to inputinformation to the PC 200.

In the PC 200 having such a hardware configuration, a program stored ina recording medium, such as the ROM 30, the HDD 40, or an optical diskis read into the RAM 20, and operates under the control of the CPU 10,thereby constituting a software control unit. A functional block toachieve functions of the PC 200 according to the present embodiment isconstructed by a combination of the software control unit thusconfigured and hardware.

Next, with reference to FIG. 3, a functional configuration of the PC 200of the present embodiment is described. FIG. 3 is an example of afunctional block diagram of the PC according to the present embodiment.As illustrated in FIG. 3, the PC 200 of the present embodiment includesa controller 200C and a network I/F 90 in addition to the HDD 40, theLCD 60, and the operation unit 70 described with reference to FIG. 2.The controller 200C includes a network control unit 201, a displaycontrol unit 202, an operation control unit 203, and an image processingunit 210.

The network I/F 90 is an interface through which the PC 200 communicateswith other devices via the network, and for example, Ethernet(registered trademark) or universal serial bus (USB) interface is used.The network I/F 90 is realized by the I/F 50 illustrated in FIG. 2.

The controller 200C is constructed by a combination of software andhardware. Specifically, a program that is stored in the ROM 30, anonvolatile memory, or a non-volatile storage medium, such as the HDD 40and an optical disc, is loaded to a volatile memory, such as the RAM 20(hereinafter referred to as “a memory”). The controller 200C isconstructed by the software control unit constructed by computation ofthe CPU 10 performed according to the program and hardware, such as anintegrated circuit. The controller 200C is a control unit that controlsthe PC 200.

The network control unit 201 acquires information input via the networkI/F 90 and transfers information to another apparatus via the networkI/F 90. The display control unit 202 causes the LCD 60 to display thestate of the PC 200, such as a graphical user interface (GUI) of theimage processing unit 210. The operation control unit 203 acquires asignal of user operation on the operation unit 70 and inputs theacquired signal to the software operating in the PC 200, such as theimage processing unit 210.

The image processing unit 210 is constructed by the CPU 10 performingcomputation according to an application program read into the RAM 20.When causing the image forming apparatus 100 to perform image formationand output, the image processing unit 210 converts the format of theimage data to be output based on a plurality of output conditions andalso converts the color gamut so that the color tone of the image outputby the image forming apparatus 100 is more faithful to the color tone ofthe image data to be output. The image processing unit 210 performs theabove-described conversion of the color gamut based on an output profileindicating color tone characteristics of the image formation output bythe image forming apparatus 100.

The image processing unit 210 determines image data (output image data)to actually output (print), and the network control unit 201 transmitsthe determined output image data to the image forming apparatus 100. Theimage forming apparatus 100 outputs the output image data.

Here, the output condition is a condition set at the time of output inthe image forming apparatus 100. It is conceivable that there is one ora plurality of candidates. When there is one candidate, the outputtarget is directly decided. Therefore, in the following embodiment, adescription is given on the premise that there are a plurality ofcandidates as output conditions. In addition, each output conditionspecifically includes, for example, the following information.

-   -   Output device: printing model, device model number, station        arrangement, etc.    -   Productivity: setting of ppm (page per minute)/mpm (meter per        minute), etc.    -   Print mode: one-pass printing or two-pass printing, etc.    -   Color material: color to be used, model number of color        material, etc.    -   Pre-coating: presence or absence, model number of the first        coating material, coating amount, etc.    -   Post-coating: presence or absence, model number of post-coating        material, coating amount, etc.    -   RIP: developer, version, etc.    -   Resolution: frequency, etc.    -   Sheet: sheet type, sheet name, etc.

FIG. 4 is an illustration of functional blocks of the image processingunit. As illustrated in FIGS. 3 and 4, the image processing unit 210further includes an image acquisition unit 220, an image conversion unit221, a color-feature-amount calculation unit 222, a cost calculationunit 223, and an output condition determination unit 224. Hereinafter,the outline of the image processing unit 210 is described with referenceto FIG. 4. More specific contents of each unit is described from FIG. 6et seq.

As illustrated in FIG. 4, the PC 200 of the present embodiment isprovided with storage units 401, 402, 403, and 404, which are realizedby the HDD 40. An input profile is stored in the storage unit 401. Anoutput profile is stored in the storage unit 402. A cost table is storedin the storage unit 403. The storage unit 404 stores a weighting table.

The image acquisition unit 220 acquires the input image data. In thepresent embodiment, the image acquisition unit 220 receives input imagedata from the file server 300 via the network I/F 90 and the networkcontrol unit 201. Note that the acquisition of input image data is notlimited to such a process and, for example, image data captured from thedigital camera 400 may be acquired as the input image data.

The image conversion unit 221 converts the received input image datainto an image and generates output image data corresponding to each ofthe plurality of output conditions. In the present embodiment, first,the image conversion unit 221 performs conversion on the input imagedata from input-device-dependent color space data (e.g., RGB: Red,Green, Blue) to device-independent color space data (e.g., L*a*b*)according to the input profile stored in the storage unit 401.

Here, the input profile is information for converting an imagerepresented by the RGB color space into an image represented by theL*a*b* color space. That is, for example, the input profile of thepresent embodiment is a lookup table in which values of colorsrepresented in RGB format and color values represented in L*a*b* formatare associated with 1:1.

Next, according to an output profile associated with one outputcondition selected from the plurality of output conditions listed ascandidates, the image conversion unit 221 converts the above-describeddevice-independent color space data into device-dependent color spacedata (e.g., CMYK) compatible with the image forming apparatus 100 as anoutput device, and generates output image data.

Here, the output profile is information for converting an imagerepresented by the L*a*b* color space into an image simply representedin the CMYK format. That is, the output profile of the presentembodiment is, for example, information of a lookup table in whichvalues of colors represented in the L*a*b* format and values of colorsrepresented in the CMYK format are associated with 1:1.

Generally, the output profile is prepared beforehand assuming one or aplurality of output conditions, and in the present embodiment, theoutput profile is associated with each of a plurality of outputconditions.

The color-feature-amount calculation unit 222 calculates color featureamount, which is a change amount of color feature of each pixel, fromimage data before and after image conversion. The color-feature-amountcalculation unit 222 of the present embodiment compares thedevice-independent color space data before and after the colorconversion process by the output profile, calculates the amount ofchange in color feature, and stores the data of the color featureamount. In this manner, the “effect” in determining thecost-effectiveness can be grasped by the color-feature-amountcalculation unit 222. The “effect” indicates the degree of quality ofthe output image. Specifically, when the effect is high, the quality ofthe output image is high. When the effect is low, the quality of theoutput image is low.

The cost calculation unit 223 calculates cost information indicating thecost of the output image data corresponding to each of the plurality ofoutput conditions, based on the output condition and the output imagedata. That is, the cost calculation unit 223 calculates the cost byreferring to a cost table from the usage amount of color material andthe information within the output condition based on the output imagedata, to obtain the cost information.

Here, the cost table is, for example, a table in which cost informationis set corresponding to each item of the output condition. The set valuemay be fixed or may be edited as needed. In this manner, the “cost” fordetermining the cost-effectiveness can be grasped by the costcalculation unit 223.

The output condition determination unit 224 calculates thecost-effectiveness. with reference to the information of “effect” basedon the color feature amount calculated by the color-feature-amountcalculation unit 222, the information of “cost” based on the costinformation calculated by the cost calculation unit 223, and theweighting table in which weights for items of the output condition areset.

FIGS. 5A and 5B are illustrations of examples of the weighting table.For example, as illustrated in FIG. 5A, in the weighting table, thecoefficients α₁ and α₂ used for calculating “effect” and the weightvalues corresponding to the respective coefficients are stored inassociation with each other. Further, for example, as illustrated inFIG. 5B, coefficients β₁, β₂, β₃, β₄, β₅, β₆, β₇, β₈, and β₉ used forcalculating “cost” and the weight values corresponding to thecoefficients are stored in association with each other. The value of“weight value” illustrated in FIGS. 5A and 5B is an example, and anadministrator and a user can redefine the value. Examples of calculationof “effect” and “cost” are described later.

Here, the weighting table is a table in which the degree of importanceis set corresponding to each item of the output condition. For example,the setting values may be fixed or may be edited as needed.

With such a series of processes, it is possible to grasp the costeffectiveness against one output condition. Here, if there are othercandidates for output condition, another output condition is set as acandidate, and the calculation process of cost effectiveness is repeatedagain.

The output condition determination unit 224 selects the output conditionhaving the highest cost-effectiveness, determines the output image databased on the output condition as the target image to be output in theimage forming apparatus 100, and obtains the output target data to beactually output. That is, for each output condition, the difference inthe effect obtained by each output condition can be quantified tocalculate the cost effectiveness, and the output condition can bedetermined based on the cost-effectiveness information. Note that costeffectiveness may be displayed and the selection of output image data bythe user may be accepted to determine the output condition.

Next, functional blocks included in the image conversion unit 221 andthe color-feature-amount calculation unit 222 are described withreference to FIG. 6. FIG. 6 is an illustration of functional blocksincluded in the image conversion unit and the color-feature-amountcalculation unit according to the present embodiment.

The image conversion unit 221 of the present embodiment further includesan L*a*b* conversion unit 2211, a gamut compression unit 2213, a gamutadjustment unit 2214, and an output-device dependent informationconversion unit 2216. Further, the color-feature-amount calculation unit222 further includes a change-amount extraction unit 2221.

First, input image data of RGB (red, green, blue) is input to the imageconversion unit 221 as image data to be output. As described above, theinput image data is received from the file server 300 via the networkI/F 90 and the network control unit 201. Below, the data format isdescribed by taking RGB format as an example.

The L*a*b* conversion unit 2211 converts input image data, which isdevice-dependent color space data on the input side, intodevice-independent color space data using an input profile, and servesas a first image conversion unit.

Specifically, when input image data is input to the image conversionunit 221, the L*a*b* conversion unit 2211 converts RGB input image datainto L*a*B* data according to the input profile stored in the HDD 40.

Here, the L*a*b* data is data represented by the L*a*b* color spacewhich is a numerical system of color representation according to humanvision. In the present embodiment, the input image data is RGB formatimage data. It is not necessary to limit the input image data toRGB-format image data, but, for example, CMYK format data may be used.The input profile is the same as described above.

The L*a*b* conversion process performed by the L*a*b* conversion unit2211 is a process of simply converting RGB format into L*a*b* formatregardless of the range of colors of pixels included in RGB input imagedata or the color gamut that the image forming apparatus 100 canrepresent. The L*a*b* data generated by the L*a*b* conversion unit 2211is device-independent L*a*b* data, and pre-compression L*a*b* databefore gamut compression. The pre-compression L*a*b* data generated bythe L*a*b* conversion unit 2211 is input to the gamut compression unit2213.

The gamut compression unit 2213 gamut-compresses the pre-compressionL*a*b* data according to the output profile. The gamut compression is aprocess to convert device-independent L*a*b* data into L*a*b* datalimited to a color gamut expressible by the image forming apparatus 100that executes image formation output, that is, device dependent L*a*b*data according to the color gamut expressible by the image formingapparatus 100.

FIG. 7 is a diagram of the concept of gamut compression. As illustratedin FIG. 7, a*b* in L*a*b*, that is, a color difference component isexpressed by orthogonal coordinates. In FIG. 7, a solid line A is aframe representing the device-independent L*a*b* color space, that is,the entire L*a*b* color space. A broken line B in FIG. 7 is a framerepresenting the color gamut reproducible by the image forming apparatus100 in the entire L*a*b* color space.

Not only the image forming apparatus 100 but also general image formingapparatuses can not reproduce all the colors in the color space.Therefore, when an image forming apparatus executes image formationoutput, colors included in image data to be output are converted into acolor range reproducible by the image forming apparatus. With referenceto FIG. 7, the process of converting an image represented by a rangeindicated by the solid line A to an image represented by a rangeindicated by the broken line B is a gamut compression process.

The output profile is the same as described above, and the gamutcompression unit 2213 gamut-compresses the pre-compression L*a*b* databy referring to a lookup table of the output profile and generates thepost-compression L*a*b* data.

Further, the gamut compression unit 2213 adjusts the content of thegamut compression process in accordance with parameters input from thegamut adjustment unit 2214. The gamut adjustment unit 2214 inputsparameters to the gamut compression unit 2213 according to a signalinput from the operation control unit 203 in response to a user'soperation on the operation unit 70. The post-compression L*a*b* datagenerated by the gamut compression unit 2213 is input to theoutput-device dependent information conversion unit 2216.

The output-device dependent information conversion unit 2216 convertsthe post-compression L*a*b* data into output-device dependentinformation according to the output profile, thus generating outputimage data. Although CMYK is taken as an example of color plane data tobe output-device dependent information, the color plane data is notlimited to CMYK. Depending on the output condition and the outputprofile associated therewith, the color plane may be constructed by, forexample, a multicolor play including O (orange), G (green), V (violet),or the like, in addition to CMYK.

The output image data generated by the output-device dependentinformation conversion unit 2216 is transmitted to the image formingapparatus 100 via the network by the network control unit 201. The imageforming apparatus 100 outputs the output image data received from the PC200.

As described above, the image conversion unit 221 according to thepresent embodiment adjusts the color tone of the image data exchanged inthe RGB format in the information processing apparatus, such as the PC,to a reproducible color space of the image forming apparatus 100 so asto perform image formation output with more faithful color tone, andconverts the adjusted image data into CMYK-format image data. Note thatthe gamut compression unit 2213, the gamut adjustment unit 2214, and theoutput-device dependent information conversion unit 2216 correspond tothe second image conversion unit.

The color-feature-amount calculation unit 222 compares color values ofthe device-independent color space data before gamut conversion andafter gamut conversion on the device-independent color space, tocalculate the color feature amount.

For example, the color-feature-amount calculation unit 222 analyzes theinfluence of the gamut compression by the gamut compression unit 2213,and calculates the influence of the gamut compression as informationindicating the quality of image quality. As illustrated in FIG. 6,pre-compression L*a*b* data and post-compression L*a*b* data generatedin the process of each processing of the image conversion unit 221 areinput into the change-amount extraction unit 2221 of thecolor-feature-amount calculation unit 222 before and after the gamutconversion.

The change-amount extraction unit 2221 compares the values of thecorresponding pixel colors in the pre-compression L*a*b* data and thepost-compression L*a*b* data before and after the gamut conversion, andcalculates the degree of change in the color of each pixel by the gamutconversion to obtain the color feature amount.

To calculate the amount of change, the change-amount extraction unit2221 calculates the degree of difference between the pixels of thepre-compression L*a*b* data and the pixels of the post-compressionL*a*b* data before and after the gamut conversion, using a calculationformula for the degree of difference. As the calculation formula, ageneral color difference calculation formula can be used. In the presentembodiment, to obtain the amount of change in color tone based on theL*a*b* data, a formula for obtaining the square root of the square ofeach element of the L*a*b* data. As another method of obtaining theamount of change in color tone, CIE 1994 color difference formula, CIE2000 color difference formula, or the like may be used. In addition, itis also possible to grasp the magnitude of the global color expressingpower by calculating the magnitude of the gamut volume after the gamutconversion.

As described above, the image processing unit 210 can generate outputimage data by performing image conversion using the international colorconsortium (ICC) profile when image conversion is performed according toeach output condition. In addition, the accuracy of color conversion canbe objectively checked by digitizing the difference in thedevice-independent color space at the time of image conversion orcalculating the gamut volume.

Next, functional blocks of the cost calculation unit 223 are describedwith reference to FIG. 8. FIG. 8 is an illustration of functional blocksof the cost calculation unit according to the present embodiment.

The cost calculation unit 223 refers to the cost table in which theoutput condition item is associated with the cost value of the item,using the output image data generated by the image conversion unit 221as input information, and calculates the cost information. The costcalculation unit 223 includes a static-cost calculation unit 2232 and adynamic-cost calculation unit 2233.

The static-cost calculation unit 2232 calculates static cost informationbased on the cost value corresponding to the output condition notdepending on the output image data. Further, the dynamic-costcalculation unit 2233 calculates dynamic cost information based on thecost value corresponding to the output condition based on the outputimage data. Cost information includes the static cost information andthe dynamic cost information.

The output condition includes a plurality of items as described above,and the cost table is a table in which the items are associated withcost values for the items. FIGS. 9A thorough 9I are diagrams of anexample of cost tables. For example, FIG. 9A illustrates a cost table ofoutput device (model) that is an item of an output condition. In thecost table, output devices are associated with cost values when theoutput devices are used.

Similarly, FIG. 9B is a cost table of printing speed in whichproductivity as an item of the output condition is associated with costvalue. FIG. 9C is a cost table of print mode in which print mode as anitem of the output condition is associated with cost value.

FIG. 9D is a cost table of color material in which color material as anitem of the output condition is associated with cost value. FIG. 9E is acost table of pre-coating material in which pre-coating material as anitem of the output condition is associated with cost value. In addition,FIG. 9F is a cost table of post-coating material in which post-coatingmaterial as an item of the output condition is associated with costvalue.

In addition, FIG. 9G is a cost table of RIP in which RIP as an item ofoutput condition is associated with cost value. FIG. 9H is a cost tableof resolution in which resolution as an item of the output condition isassociated with cost value. FIG. 9I is a cost table of paper in whichpaper as an item of output condition is associated with cost value.

FIGS. 10A through 10C are diagrams of calculated cost information. FIG.10A illustrates cost information that is a reference result of costtables. In the example of the cost information illustrated in FIG. 10A,in the case of the output condition A illustrated in the third column,the cost values acquired according to the output condition A withreference to the cost tables are illustrated in the fourth column.

FIG. 10B is an example of the static cost information. As illustrated inFIG. 10B, the item numbers of #1, #3, #7, and #8 are constantirrespective of the contents of the output image data and the number ofsheets. Therefore, the static-cost calculation unit 2232 add the costvalues of the items #1, #3, #7, and #8 to calculate the static costinformation.

FIG. 10C is an example of the dynamic cost information. As illustratedin FIG. 10C, the items of item numbers #2, #4, #5, #6, and #9 varydepending on the contents of the output image data and the number ofsheets. Therefore, the dynamic-cost calculation unit 2233 calculates thetotal amount of one job for each of the items of #2, #4, #5, #6, and #9and adds the cost values to calculate the dynamic cost information. FIG.10C illustrates an example in which there are 10 images per job.

In particular, if the amount of an item is determined depending on thecontent of the original data like the color material of #4, the amountis calculated by referring to the output image data. When the amount ofthe color material is calculated, the processing efficiency may beincreased by roughly calculating the amount of color material to be usedfrom each pixel value. Alternatively, to increase the estimationaccuracy, the amount of color material may be checked in unit of dotafter halftone screening process is performed.

In the example illustrated in FIGS. 10A through 10C, from the generalpoint of view, the item numbers #1, #3, #7 and #8 are classified intothe static cost information, and the item numbers #2, #4, #5, #6 and #9are classified into the dynamic cost information. However, it isunnecessary to fix the contents of the items as illustrated in FIGS. 10Band 10C. For example, it may be calculated by treating all of the itemsas dynamic costs, or vice versa.

Next, functional blocks of the output condition determination unit 224is described with reference to FIG. 11. FIG. 11 is an illustration offunctional blocks of the output condition determination unit accordingto the present embodiment. The output condition determination unit 224calculates the cost effectiveness with reference to the weighting tableusing the color feature amount calculated by the color-feature-amountcalculation unit 222 and the cost information calculated by the costcalculation unit 223 as input information, determines an outputcondition to be used for output, and obtains output image data generatedbased on the determined output condition. As described above, theweighting table has the importance set for each item of the outputcondition.

The output condition determination unit 224 of the present embodimentfurther includes an effect calculation unit 2241, a cost calculationunit 2242, an output candidate extraction unit 2243, an informationdisplay unit 2244, a selection receiving unit 2245, and a preview imagegeneration unit 2246.

The effect calculation unit 2241 calculates the effect at the time ofoutputting the output image data by the color feature amount withreference to the weighting table illustrated in FIG. 5A. For example,the effect calculation unit 2241 calculates the effect using thefollowing formula.

Effect=α₁×1/(color differenceΔE)+α₂×gamut volume

As described above, the data of the color feature amount is quantifiedin the device-independent color space, and the color reproductionaccuracy is higher as the color difference ΔE is smaller. Therefore, theeffect calculation unit 2241 calculates the color feature amount as theeffect to calculate the magnitude of the effect. On the other hand, inthe case of the gamut volume, it can be said that the larger thenumerical value, the greater the effect. The effect calculation unit2241 can also limit the color gamut of interest or attach importance toa specific color by referring to the weighting table.

The cost calculation unit 2242 refers to the weighting table illustratedin FIG. 5B and calculates the cost at the time of outputting the outputimage data according to the cost information. For example, the costcalculation unit 2242 calculates the cost using the following formula.

Cost=β₁×output device+β₂×productivity+β₃×print mode+β₄×colormaterial+β5×pre-coating material+β₆×post-coatingmaterial+β₇×RIP+β₈×resolution+β₉×sheet

Since the data of the cost information is quantified as described above,the cost calculation unit 2242 calculates the magnitude of the cost withthe magnitude of the numerical value. The cost calculation unit 2242 canlimit the item of interest or attach importance to a specific item byreferring to the weighting table.

The output candidate extraction unit 2243 divides the effect calculatedby the effect calculation unit 2241 by the cost calculated by the costcalculation unit 2242 (effect/cost), calculates the cost effectivenessin each of the output conditions, and lists as candidates. Here, theoutput candidate extraction unit 2243 determines the output image dataconverted with the most cost-effective output condition from thecandidates as the output target data to be output in the image formingapparatus 100.

As described above, by using the weighting table, for example, it ispossible to give a bias in the handling of the color differencecalculated according to the degree of importance of the pixel ofinterest in the color feature amount (for example, a bias that yellowcomponent is not cared even if the color difference is large) or give abias in importance of color materials in the cost information (forexample, a bias that, since the inventory of K ink is large, it is notadded to the calculation result). The cost effectiveness can becalculated in consideration of the user's convenience.

The information display unit 2244 displays various types of information,such as a plurality of output conditions, cost effectiveness for each ofthe plurality of output conditions, and a preview image generated by thepreview image generation unit 2246. The information display unit 2244converts various types of information into screen display data anddisplays the screen display data on the LCD 60 via the display controlunit 202 to provides the screen display data to the user.

Here, the screen display data is, for example, information on colorreproduction accuracy by color difference ΔE with respect to each outputcondition, information on gamut volume, or cost information. Further,the image display data may be displayed as a list of set of calculationresults of “effect/cost” as a result of weighting by the weightingtable. Also, taking into consideration the possibility that users areconfused by increasing the number of set of calculation results, forexample, the calculation results may be displayed in order of costeffectiveness (“effect/cost”) or sorted by item on the GUI, or a rangevalue may be set so that screening can be performed.

Note that, when the weighting table itself is reset based on thedetermination made by the user, the output candidate extraction unit2243 may be configured to redo the series of processes until the resultis obtained.

Further, the output target data to be output by the image formingapparatus 100 may be determined by the user. That is, when the user towhom the above-described image display data (a plurality of outputconditions and cost effectiveness for the plurality of outputconditions) is presented selects an output condition to be used foroutput by the image forming apparatus 100 from a group of outputcondition candidates, the selected output condition is input to theselection receiving unit 2245 as selection information via the operationcontrol unit 203 by using the operation unit 70.

The selection receiving unit 2245 receives selection of a desired outputcondition from the user among the plurality of output conditionsdisplayed by the information display unit 2244. The selection receivingunit 2245 determines the output image data based on selection by theselection information.

The preview image generation unit 2246 generates the preview image,using the output image data corresponding to each of the plurality ofoutput conditions converted by the image conversion unit 221 as inputinformation. The generated preview image is displayed via the displaycontrol unit 202 by the information display unit 2244. The preview imageis presented to the user together with the set of calculation results ofcost effectiveness (effect/cost).

Next, functional blocks of the preview image generation unit 2246 aredescribed with reference to FIG. 12. FIG. 12 is an illustration offunctional blocks of the preview image generation unit according to thepresent embodiment. The preview image generation unit 2246 furtherincludes a color-difference information generation unit 461, a gamutinside-outside determination unit 462, an image synthesis unit 463, apreview setting unit 464, and an RGB conversion unit 466. The PC 200further includes a storage unit 405 in which monitor profiles arestored.

The preview image generation unit 2246 analyzes the influence of gamutcompression by the gamut compression unit 2213 and generates a screen sothat the user can easily recognize the influence. As illustrated in FIG.12, the pre-compression L*a*b* data and the post-compression L*a*b* datagenerated by the processes of the image conversion unit 221 are into thecolor-difference information generation unit 461 of the preview imagegeneration unit 2246, and the pre-compression L*a*b* data and the outputprofile are input to the gamut inside-outside determination unit 462.

The color-difference information generation unit 461 compares the colorvalues of pixels corresponding to the pre-compression L*a*b* data andthe post-compression L*a*b* data, determines the amount of change incolor of each pixel by the gamut conversion, and converts the amount ofchange into color difference information. The color-differenceinformation generation unit 461 generates color-difference image data inwhich each pixel constituting the output image data is composed of thecolor difference information.

The color-difference information generation unit 461 performscalculation based on a calculation formula for calculating the degree ofdifference between the pixels of the pre-compression L*a*b* data beforecompression and the pixels of the post-compression L*a*b* data. As thecalculation formula, a general color difference calculation formula canbe used. In the present embodiment, a formula to find the square root ofthe square of each element of the L*a*b* data can be used to obtain thechange amount of color tone based on the L*a*b* data. As another methodof obtaining the amount of change in color tone, CIE 1994 colordifference formula, CIE 2000 color difference formula, or the like maybe used.

Based on the pre-compression L*a*b* data and the output profile, thegamut inside-outside determination unit 462 determines whether thepixels constituting the output image data are colors reproducible in theimage forming apparatus 100, generates flag information indicatingwhether color in each pixel is reproducible, and generatescolor-reproduction impossible region data indicating at least acolor-reproduction impossible region among the pixels constituting theoutput image data.

The image synthesis unit 463 converts the color-difference image datagenerated by the color-difference information generation unit 461 andthe color-reproduction impossible region data generated by the gamutinside-outside determination unit 462 into images, synthesize theimages, and generates preview-image L*a*b* data indicating which part ofthe output image data changes in color. In accordance with theparameters input from the preview setting unit 464, the image synthesisunit 463 adjusts the content of processing when generating thepreview-image L*a*b* data. The preview setting unit 464 inputsparameters to the image synthesis unit 463 according to a signal inputfrom the operation control unit 203 in accordance with an operation onthe operation unit 70 by the operator.

The parameter is information that defines in what format thepreview-image L*a*b* data is displayed. The parameter can be reflectedin the preview-image L*a*b* through processing in the image synthesisunit 463 by setting how to synthesize images, for example, highlightinga portion with a large color difference based on the color-differenceimage data to display a two-dimensional (2D) image as illustrated inFIG. 13A or handling the color-difference image data as contourline-like data to display a three-dimensional (3D) image as illustratedin FIG. 13B. The preview-image L*a*b* data thus generated is input tothe RGB conversion unit 466.

With reference to a monitor profile, the RGB conversion unit 466converts the L*a*b* format data into RGB format data according to thecolor representation characteristics of the LCD 60 of the PC 200, thusgenerating preview-image RGB data. That is, the RGB conversion unit 466converts a preview image generated based on, e.g., pre-compressionL*a*b* data represented by a device-independent color space into RGBdata represented on a color space that the LCD 60 of the PC 200 canrepresent.

Here, the monitor profile stored in the storage unit 405 is informationof a lookup table in which the values of colors represented by thedevice-independent L*a*b* format are associated with the values ofcolors of the RGB color space limited to the color gamut that the LCD 60can represent. Generally, the monitor profile is designed in advance andprovided in association with the LCD 60 and is actually stored in, forexample, the HDD of the PC 200 as an entity.

As described above, in the present embodiment, the image informationgenerated by the image synthesis processing by the image synthesis unit463 is displayed through the processing by the RGB conversion unit 466.That is, the image synthesis unit 463 and the RGB conversion unit 466work together to function as a preview-image generation unit.

The preview-image RGB data generated and output as described above isinput to the display control unit 202. The display control unit 202controls the LCD 60 to display the preview image RGB data input from theimage processing unit 210.

That is, as described above, the cost effectiveness in each outputcondition is displayed (presented) to the user, and the output conditionis decided by selection by the user. Thus, the user is convinced inadvance and the output image data can be output. Furthermore, it ispossible for the user to visually confirm the magnitude of the colorvalue to be changed by the gamut conversion processing. Therefore, it ispossible for the user to efficiently and objectively grasp the costeffectiveness without performing trial printing.

Next, a flow of processing of determining output image data, which is atarget image to be output in the image forming apparatus 100, isdescribed below. FIG. 14 is a flowchart of the flow of processing ofdetermining output image data.

As illustrated in FIG. 14, first, the image acquisition unit 220receives (acquires) input image data from the file server 300 via thenetwork (step S10). The image conversion unit 221 converts the inputimage data into device-independent color space data (for example, L*a*b*data) according to an input profile (step S11).

Next, the image conversion unit 221 converts the device-independentcolor space data into device-dependent color space data (for example,CMYK data) according to an output profile associated with an outputcondition (step S12). The color-feature-amount calculation unit 222calculates color feature amounts from image data before and after colorconversion (before and after gamut compression) (step S13).

Next, the cost calculation unit 223 calculates cost information from theoutput image data, the output condition, and a cost table (step S14).That is, with reference to the cost table, the cost calculation unit 223obtains cost information from the amount of color material used by theoutput image data and information within the output condition.

Next, the output condition determination unit 224 calculates costeffectiveness from the color feature amount, the cost information, andthe weighting table (step S15). That is, the output conditiondetermination unit 224 calculates cost effectiveness with reference tothe information of “effect” by the color feature amount, the informationof “cost” based on the calculated cost information, and the weightingtable in which the weights for the items of output condition are set.

The output condition determination unit 224 determines whether there isanother output condition candidate (step S16). If there is anotheroutput condition (YES in step S16), the output condition determinationunit 224 sets the another candidate to the output condition andcontinues the process (step S17). The process returns to step S12 andthe processing from step S12 is repeated.

On the other hand, when there is no other output condition (NO in stepS16), the output image data using the calculated output condition withthe highest cost-effectiveness is determined as the image data to beoutput in the image forming apparatus 100 (step S18).

For example, in an environment like “printing factory” in which there isa plurality of output conditions to be combined at the time of printingand there is a wide variety of options of the output condition, it isdesirable to grasp the level of the image quality as an effect as wellas the cost. As described above, since the image processing system 1according to the present embodiment can quantify the difference in theeffect obtained with respect to the output condition and can grasp thecost effectiveness, the output image data using a desired outputcondition can be determined based on the cost effectiveness.

A program to be executed on the PC 200 according to the presentembodiment is recorded and provided in a computer-readable recordingmedium, such as a compact disc-read only memory (CD-ROM), a flexibledisk (FD), a compact disc-recordable (CD-R), or a digital versatile disk(DVD), in a file in installable or executable format.

The program executed by the PC 200 according to the present embodimentmay be stored on a computer connected to a network, such as theInternet, and provided so as to be downloaded via the network. Further,the program executed by the PC 200 according to the present embodimentmay be provided or distributed via a network, such as the Internet.

Further, the program executed by the PC 200 according to the presentembodiment may be configured to be provided by being incorporated inadvance in a ROM or the like. The program executed by the PC 200according to the present embodiment has a module configuration includingeach of the above-described units (the image acquisition unit, the imageconversion unit, the color-feature-amount calculation unit, the costcalculation unit, the output condition determination unit). As an actualhardware, a CPU (processor) reads the program from the recording mediumand executes the program to load each of the above-described units on amain memory, and each unit is generated on the main memory. For example,a part or all of the functions of the above-described units may beimplemented by a dedicated hardware circuit.

Although some embodiments of the present disclosure have been describedabove, the above-described embodiments are presented as examples, andare not intended to limit the scope of the invention. Theabove-described embodiments can be implemented in various other forms,and various omissions, substitutions, changes, and combinations can bemade without departing from the gist of the invention. Such embodimentsand variations thereof are included in the scope and gist of theinvention and are included in the invention described in claims and theequivalent scope thereof.

Each of the functions of the described embodiments may be implemented byone or more processing circuits or circuitry. Processing circuitryincludes a programmed processor, as a processor includes circuitry. Aprocessing circuit also includes devices such as an application specificintegrated circuit (ASIC), digital signal processor (DSP), fieldprogrammable gate array (FPGA), and conventional circuit componentsarranged to perform the recited functions.

What is claimed is:
 1. An image processing apparatus comprisingcircuitry to: acquire input image data; perform image conversion on theinput image data to generate output image data corresponding to each ofa plurality of output conditions; calculate a color feature amount thatis a change amount of color characteristics of each pixel from the inputimage data and the output image data before and after the imageconversion; calculate cost information indicating cost of the outputimage data corresponding to each of the plurality of output conditions,based on the plurality of output conditions and the output image data;and calculate cost effectiveness with reference to the color featureamount, the cost information, and a weighting table in which weights foritems of the plurality of output conditions are set, to determine oneoutput condition of the plurality of output conditions to be used foroutput.
 2. The image processing apparatus according to claim 1, whereinthe circuitry converts the input image data that is input-sidedevice-dependent color space data into device-independent color spacedata using an input profile and converts the device-independent colorspace data into the output image data that is output-sidedevice-dependent color space data using an output profile.
 3. The imageprocessing apparatus according to claim 2, wherein the circuitryperforms gamut conversion on the device-independent color space data,based on each of a plurality of output profiles, and generates aplurality of pieces of output image data.
 4. The image processingapparatus according to claim 3, wherein the circuitry compares colorvalues of the device-independent color space data before the gamutconversion and after the gamut conversion on the device-independentcolor space to calculate the color feature amount.
 5. The imageprocessing apparatus according to claim 4, wherein the circuitry refersto a cost table in which at least one item of the items of the pluralityof output conditions is associated with a cost value of the at least oneitem and calculates, as the cost information, static cost informationbased on a cost value corresponding to an output condition not dependingon the output image data and dynamic cost information based on a costvalue corresponding to an output condition depending on the output imagedata.
 6. The image processing apparatus according to claim 5, whereinthe circuitry calculates an effect of outputting the output image data,based on the color feature amount with reference to the weighting table,calculates a cost of outputting the output image data, based on the costinformation with reference to the weighting table, calculates the costeffectiveness by dividing the effect by the cost, and determines, from amagnitude of the cost effectiveness, the one output condition to be usedfor output.
 7. The image processing apparatus according to claim 6,wherein the circuitry displays the cost effectiveness for each of theplurality of output conditions on a display, and receives selection ofan output condition from the plurality of output conditions through thedisplay.
 8. The image processing apparatus according to claim 7, whereinthe circuitry generates a preview image based on the output image datacorresponding to each of the plurality of output conditions, anddisplays the preview image on the display.
 9. An image processing systemcomprising: an image output apparatus; and an image processing apparatusthat generates output image data to be output by the image outputapparatus, the image processing apparatus comprising circuitry to:acquire input image data; perform image conversion on the input imagedata to generate the output image data corresponding to each of aplurality of output conditions; calculate a color feature amount that isa change amount of color characteristics of each pixel from the inputimage data and the output image data before and after the imageconversion; calculate cost information indicating cost of the outputimage data corresponding to each of the plurality of output conditions,based on the plurality of output conditions and the output image data;and calculate cost effectiveness with reference to the color featureamount, the cost information, and a weighting table in which weights foritems of the plurality of output conditions are set, to determine oneoutput condition of the plurality of output conditions to be used foroutput, the image output apparatus to receive the output image data fromthe image processing apparatus and output the output image data receivedfrom the image processing apparatus.
 10. A non-transitory recordingmedium storing an image processing program to cause a computer toexecute: acquiring input image data; performing image conversion on theinput image data to generate output image data corresponding to each ofa plurality of output conditions; calculating a color feature amountthat is a change amount of color characteristics of each pixel from theinput image data and the output image data before and after the imageconversion; calculating cost information indicating cost of the outputimage data corresponding to each of the plurality of output conditions,based on the plurality of output conditions and the output image data;and calculating cost effectiveness with reference to the color featureamount, the cost information, and a weighting table in which weights foritems of the plurality of output conditions are set, to determine oneoutput condition of the plurality of output conditions to be used foroutput.